Latch circuits serve as basic storage elements in integrated circuit (IC) designs. Thousands of latch circuits are used to accomplish a desired functionality of an IC. Design engineers typically add a percentage (e.g., 5-10%) of latch circuits to an IC design above the total number of latch circuits that are involved in the IC's function. These “spare latch circuits” are used to accommodate changes made to an IC design, after the physical layout of the circuit is finalized. For instance, the spare latch circuits may be used to correct bugs in the later stage of IC design discovered during verification and optimization steps.
Computer-Aided Design (CAD) tools that synthesize the IC circuit may base the physical layout on timing constraints (e.g., a time budget). However, because spare latch circuits have no timing limitations, at least when they are initially placed, the CAD tools position spare latch circuits at locations that are remote from logic elements within the design (e.g., clustered in corners of the IC). As such, when a design change is required, the spare latch circuits may be of little or no use in fulfilling the change.
Accordingly, there exists a need in the art to overcome the deficiencies and limitations described hereinabove.